package com.wyz.mapper;


import com.wyz.entity.ClassTable;
import com.wyz.entity.Classthacher;
import com.wyz.entity.Teacher;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 教师任职表功能接口
 */
@Mapper
public interface ClassThacherDao {
    /**
     * 查询表中所有的任职信息
     * @return
     */
    public List<Classthacher> getAllInfo();

    /**
     * 按编号查询单个任职信息
     * @param id
     * @return
     */
    public Classthacher getIdInfo(int id);

    /**
     * 按教师表对象查询对应的任职信息
     * @param teacher 教师对象
     * @return
     */
    public   List<Classthacher> getThacherInfo(Teacher teacher);

    /**
     * 按班级表对象进行任职信息查询
     * @param classTable
     * @return
     */
    public List<Classthacher> getClassInfo(ClassTable classTable);

    /**
     * 按时间进行查询任职信息
     * @param openDate 开始时间
     * @param closeDate 结束时间
     * @return
     */
    public List<ClassTable> getDateInfo(@Param("openDate") String openDate, @Param("closeDate") String closeDate);

    /**
     * 向表中插入一条信息
     * @param classthacher
     * @return
     */
    public int inset(Classthacher classthacher);

    /**
     * 修改某个任职信息，一般都是用于修改任职状态，其他均不做修改
     * @param classthacher
     * @return
     */
    public int update(Classthacher classthacher);

    /**
     * 按编号删除某个任职信息
     * @param id
     * @return
     */
    public int delete(int id);

}
